/**
 * package for all the model classes to fit the mvc format
 */
package javamonsters.model;

import java.awt.Point;
import java.math.BigDecimal;

/**
 * Represents the game's Player
 * 
 * @author Evan LaHurd
 * @version 1.0
 */
public class Player extends Character {
	
	/**
	 * 
	 */
	private static final long serialVersionUID = -3378114399193679615L;
	
	/**
	 * players current location as a point
	 */
	private Point currLocation;
	
	/**
	 * the players current solar system
	 */
	private SolarSystem currSystem;
	
	/**
	 * @param name The player's name
	 * @param fighterPts The player's fighter skill points 
	 * @param engineerPts The player's engineer skill points
	 * @param pilotPts The player's pilot skill points
	 * @param traderPts The player's trader skill points
	 * @param credits The player's credits
	 * @param ship The player's ship
	 * @param difficulty The difficulty of the game
	 */
	public Player(String name, int fighterPts, int engineerPts, int pilotPts,
			     int traderPts, BigDecimal credits, Ship ship, String difficulty) {
		
		super(name, fighterPts, engineerPts, pilotPts,
				traderPts, credits, ship, difficulty);
		this.currLocation = null;
	}
	
	/**
	 * @return the current location of the player
	 */
	public Point getCurrLocation() {
		return currLocation;
	}
	
	/**
	 * sets the current location of the player
	 * 
	 * @param currLocation the new current location to be set
	 */
	public void setCurrLocation(Point currLocation) {
		this.currLocation = currLocation;
	}

	/**
	 * @return the current system
	 */
	public SolarSystem getCurrSystem() {
		return currSystem;
	}
	
	/**
	 * sets the players current system to a new system
	 * 
	 * @param currSystem the new current system to be set
	 */
	public void setCurrSystem(SolarSystem currSystem) {
		this.currSystem = currSystem;
	}
}
